#pragma once
#include <memory>
#include "game.h"
#include "lua_engine.h"

class Mgr : public Singleton<Mgr> {
	friend class Singleton<Mgr>;
	Mgr();
private:
	uint32 pid_ = 0;
	uint64 module_base_ = 0;
	HWND hwnd_game_ = NULL;
	std::shared_ptr<Game> game_;
	std::shared_ptr<LuaEngine> engine_;
public:
	void init(uint32 pid, HWND hwnd_game, uint64 module_base);
	uint64 module_base();
	std::shared_ptr<Game> game();
	std::shared_ptr<LuaEngine> engine();
	std::string feature_code_positioning();
};
